package com.dong.thread.threadbasic;

/**
 * Interrupt 与 interrupted
 *
 * @author by jiweidong on 2021/11/21.
 */
public class T05_Interrupt_and_interrupted {

    public static void main(String[] args) {
        Thread t = new Thread(() -> {

            for (; ; ) {
                // 这是结束线程比较优雅的一种方式
                if (Thread.interrupted()) {
                    System.out.println("Thread is interrupted");
                    System.out.println("interrupted： " + Thread.interrupted());
                    break;
                }
            }
        });

        t.start();

        SleepHelper.sleepSeconds(2);

        t.interrupt();

        // 思考一下，如果在这里写
//        System.out.println("main: " + t.interrupted());
        // 输出的是哪个线程的中断状态；
        //答案是：输出的是主线程的中断状态
    }
}
